package com.sfpay.coreplatform.member.persistence.dao;

import org.apache.ibatis.annotations.Param;

import com.sfpay.coreplatform.member.common.enums.EPCertType;
import com.sfpay.coreplatform.member.valueobject.dto.EnterpriseMember;

/**
 * 
 * 
 * 类说明：企业表管理dao
 * 
 * 
 * <p>
 * 详细描述：
 * 
 * 
 * @author 313717
 * 
 *  CreateDate: 2013-4-15
 */
public interface IEnterpriseManageDao {
	/**
	 * 
	 * 
	 * 方法说明：方法说明：根据会员号查询信息(通用)
	 * 
	 * @param memberNo
	 *            会员号
	 */
	public EnterpriseMember queryEPMemberDetailByMemberNo(Long memberNo);

	/**
	 * 方法说明： 根据登入标识,获取会员信息
	 * 
	 * @param map
	 * @return
	 */
	public EnterpriseMember queryEPMemberDetailByLoginType(@Param("loginId")String loginId,@Param("loginType")int loginType);

	/***
	 * 
	 *
	 * 方法说明：查询企业会员是否已经被使用
	 *
	 * @param epMemberExt
	 * @return
	 */
	public  int queryEPMemberIsExist(EnterpriseMember epMemberExt);

	/**
	 * 
	 *
	 * 方法说明：添加企业会员信息
	 *
	 * @param enterpriseMember
	 */
	public void addMemberEPExts(EnterpriseMember enterpriseMember);

	/**
	 * 
	 *
	 * 方法说明：根据会员号，查询企业信息
	 *
	 * @param memberNo
	 * @return
	 */
	public EnterpriseMember queryEnterpriseMemberByMemberNo(@Param("memberNo")Long memberNo);
	
	/**
	 * 
	 *
	 * 方法说明：修改企业会员信息
	 *
	 * @param epMemberExts
	 */
	public void updateEPMemberExtInfo(EnterpriseMember epMemberExts);
	
	/**
	 * 
	 *
	 * 方法说明：条件查询企业会员信息
	 *
	 * @param epCertType
	 * @param epCertTypeOther
	 * @param epCertNo
	 * @return
	 */
	public EnterpriseMember queryEnterpriseMemberInfo(@Param("epCertType")EPCertType epCertType,
			@Param("epCertTypeOther")String epCertTypeOther,@Param("epCertNo")String epCertNo);

}
